const test = [
    ["5","3",".",".","7",".",".",".","."],
    ["6",".",".","1","9","5",".",".","."],
    [".","9","8",".",".",".",".","6","."],
    ["8",".",".",".","6",".",".",".","3"],
    ["4",".",".","8",".","3",".",".","1"],
    ["7",".",".",".","2",".",".",".","6"],
    [".","6",".",".",".",".","2","8","."],
    [".",".",".","4","1","9",".",".","5"],
    [".",".",".",".","8",".",".","7","9"]
]

for (const item of test) {

}

const test1 = ["5","3",".",".","7",".",".",".","."]
let pool = ''
for (const item of test1) {
    // 第一遍遍历获取有值的字段，存入对照pool
    if (item !== '.') {
        pool += item
    }
    // console.log(pool)
}
for (const index in test1) {
    // 第二遍还是尝试填充空白，填入前与pool中内容比较
    if (test1[index] === '.') {
        for (let i = 1; i < 10; i++) {
            if (pool.indexOf(i + '') === -1) {
                test1[index] = i + ''
                // console.log(i)
                pool += i + ''
                break
            }
        }
        
    }
}
console.log(test1)